Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Обмін даними в ОС UNIX за допомогою черг повідомлень

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
Комп'ютерна інженерія
Кафедра:
ЕОМ

Інформація про роботу

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Організація обчислювальних процесів у паралельних системах
Група:
КСМ

Частина тексту файла

Тема: Обмін даними в ОС UNIX за допомогою неіменованих та іменованих каналів. Мета: Засвоїти принципи роботи неіменованих та іменованих каналів. Загальні відомості 1.1. Серед усіх категорій засобів комунікації найбільш вживаними є канали зв'язку, що забезпечують досить безпечну і інформативну взаємодію процесів.              Існує дві моделі передачі даних по каналах зв'язку - потік вводу-виводу і повідомлення. З них більш простою є потокова модель, у якій вся інформація в каналі зв'язку розглядається як безупинний потік байт, що не володіє ніякою внутрішньою структурою. 1.2. Потокова передача інформації може здійснюватися не тільки між процесами, але і між процесом і пристроєм вводу-виводу, наприклад між процесом і диском, на якому дані представляються у вигляді файлу. Оскільки системні виклики, що використовуються для потокової роботи з файлом, багато в чому відповідають системним викликам, застосовуваним для потокового спілкування процесів, ми почнемо наш розгляд саме з механізму потокового обміну між процесом і файлом. 1.3. Інформація про файли, які використовує процес, входить до складу його системного контексту і зберігається в його блоці керування - PCB. В операційній системі UNІX можна спрощено вважати, що інформація про файли, з якими процес здійснює операції потокового обміну, разом з інформацією про потокові лінії зв'язку, що з'єднують процес з іншими процесами і пристроями вводу-виводу, зберігається в деякому масиві, що одержав назву таблиці відкритих файлів (таблиці файлових дескрипторів). Індекс елемента цього масиву, що відповідає визначеному потоку вводу-виводу, одержав назву файлового дескриптора для цього потоку. Таким чином, файловий дескриптор являє собою невелике ціле число, що для поточного процесу в даний момент часу однозначно визначає деякий діючий канал вводу-виводу. Деякі файлові дескриптори на етапі старту будь-якої програми асоціюються зі стандартними потоками вводу-виводу. Так, наприклад, файловий дескриптор 0 відповідає стандартному потоку вводу, файловий дескриптор 1 - стандартному потоку виводу, файловий дескриптор 2 - стандартному потоку для виводу помилок. У нормальному інтерактивному режимі роботи стандартний потік вводу зв'язує процес із клавіатурою, а стандартні потоки виводу і виводу помилок - з поточним терміналом. 1.4. Файловий дескриптор використовується як параметр, що описує потік вводу-виводу, для системних викликів, що виконують операції над цим потоком. Тому перш ніж робити операції читання даних з файлу і запису їх у файл, ми повинні помістити інформацію про файл у таблицю відкритих файлів і визначити відповідний файловий дескриптор. Для цього застосовується процедура відкриття файлу, здійснювана системним викликом open(). 1.5. Для здійснення потокових операцій читання інформації з файлу і її запису у файл застосовуються системні виклики read() і wrіte(). 1.6. Після завершення потокових операцій процес повинен виконати операцію закриття потоку вводу-виводу, під час якої відбудеться остаточне скидання буферів на лінії зв'язку, звільняться виділені ресурси операційної системи. При цьому елемент таблиці відкритих файлів, що відповідає файловому дескриптору, буде позначений як вільний. За ці дії відповідає системний виклик close(). Треба відзначити, що при завершенні роботи процесу за допомогою явного чи неявного виклику функції exіt() відбувається автоматичне закриття усіх відкритих потоків вводу-виводу. 1.7. Найбільш простим способом для передачі інформації за допомогою потокової моделі між різними процесами чи навіть всередині одного процесу в операційній системі UNIX єpіpe (канал, труба, конвеєр). Важлива відмінність pіp'а від файлу полягає в тім, що прочитана інформація негайно видаляється з нього і не може бути прочитана повторно. 1.8. Pipe можна уявити собі у виді труби обмеженої ємності, розташованої всередині адресного простору операційної системи, доступ до вхідного і вихідного отвору якої здійснюється за допомогою системних викликів. У дійсності pіpe являє собою област...
Антиботан аватар за замовчуванням

15.05.2013 20:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини